package ipebg.mzk.facade.entity;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;

import org.hibernate.annotations.GenericGenerator;

@Entity
@Table(name = "MS_FILE")
public class MsFile implements Serializable{

	private static final long serialVersionUID = -4959067243293078341L;

	@Id
	@GenericGenerator(name = "hibernate-uuid", strategy = "uuid")
	@GeneratedValue(generator = "hibernate-uuid")
	@Column(name="FILE_ID")
	private String fileId;
	
	@Column(name="FILE_REAL_NAME")
	private String fileRealName;
	
	@Column(name="FILE_REMOTE_NAME")
	private String fileRemoteName;
	
	@Column(name="File_STORAGE_GROUP")
	private String fileStorageGroup;
	
	@Column(name="FILE_TYPE")
	private String fileType;
	
	@Column(name="UPLOAD_DATETIME")
	private Date uploadDatetime;
	
	@Column(name="UPLOADER")
	private String uploader;
	
	@Column(name="ENABLED")
	private String enabled;
	
	@Transient
	private String fullUrl;
	
	
	public MsFile(){};
	
	public MsFile(String fileId, String fileRealName, String fileRemoteName, String fileStorageGroup, String fileType, Date uploadDatetime, String uploader, String enabled) {
		this.fileId = fileId;
		this.fileRealName = fileRealName;
		this.fileRemoteName = fileRemoteName;
		this.fileStorageGroup = fileStorageGroup;
		this.fileType = fileType;
		this.uploadDatetime = uploadDatetime;
		this.uploader = uploader;
		this.enabled = enabled;
	}



	public String getFullUrl() {
		return fullUrl;
	}

	
	
	public void setFullUrl(String fullUrl) {
		this.fullUrl = fullUrl;
	}

	public String getFileId() {
		return fileId;
	}

	public void setFileId(String fileId) {
		this.fileId = fileId;
	}

	public String getFileRealName() {
		return fileRealName;
	}

	public void setFileRealName(String fileRealName) {
		this.fileRealName = fileRealName;
	}

	public String getFileRemoteName() {
		return fileRemoteName;
	}

	public void setFileRemoteName(String fileRemoteName) {
		this.fileRemoteName = fileRemoteName;
	}

	public String getFileStorageGroup() {
		return fileStorageGroup;
	}

	public void setFileStorageGroup(String fileStorageGroup) {
		this.fileStorageGroup = fileStorageGroup;
	}

	public String getFileType() {
		return fileType;
	}

	public void setFileType(String fileType) {
		this.fileType = fileType;
	}

	public Date getUploadDatetime() {
		return uploadDatetime;
	}

	public void setUploadDatetime(Date uploadDatetime) {
		this.uploadDatetime = uploadDatetime;
	}

	public String getUploader() {
		return uploader;
	}

	public void setUploader(String uploader) {
		this.uploader = uploader;
	}

	public String getEnabled() {
		return enabled;
	}

	public void setEnabled(String enabled) {
		this.enabled = enabled;
	}
}
